package cn.itcast.nems.studentrecord.service;

import cn.itcast.nems.studentrecord.bo.StudentRecordInvoiceBo;
import cn.itcast.nems.studentrecord.vo.StudentRecordInvoiceVo;

import java.util.List;

public interface StudentRecordInvoiceService {

    /**
     * 列出学籍下的所有发票
     *
     * @param studentId
     * @param studentRecordId
     * @return
     */
    List<StudentRecordInvoiceVo> listStudentRecordInvoices(Integer studentId, String studentRecordId);

    /**
     * 在学籍下创建发票
     *
     * @param studentId
     * @param studentRecordId
     * @param studentRecordInvoiceBo
     * @return
     */
    Boolean createStudentRecordInvoice(Integer studentId, String studentRecordId, StudentRecordInvoiceBo studentRecordInvoiceBo);

    /**
     * 更新发票
     *
     * @param studentId
     * @param studentRecordId
     * @param invoiceId
     * @param studentRecordInvoiceBo
     * @return
     */
    Boolean updateStudentRecordInvoice(Integer studentId, String studentRecordId, String invoiceId, StudentRecordInvoiceBo studentRecordInvoiceBo);

    /**
     * 删除发票
     *
     * @param studentId
     * @param studentRecordId
     * @param invoiceId
     * @return
     */
    Boolean deleteStudentRecordInvoice(Integer studentId, String studentRecordId, String invoiceId);
}
